<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<!--  Copyright (C) 2005 LinBox team, part of LinBox, GNU LGPL, see COPYING
-->
<!--
/*
 * Coypright (c) LinBox
 * ========LICENCE========
 * This file is part of the library LinBox.
 *
 * LinBox is free software: you can redistribute it and/or modify
 * it under the terms of the  GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 * ========LICENCE========
 *
 */
 -->
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]">
   <link href="doxygen.css" rel="stylesheet" type="text/css">
   <title>linbox: Installation</title>
</head>
  <body text="#000000" bgcolor="#FFFFFF" link="#0000EE" vlink="#551A8B" alink="#FF0000">
    &nbsp;
    <center>
      <p><b><font size=+2>How to install LinBox (from a distribution)</font></b></center>

    <p><br>
    <blockquote>
      See also <a href="INSTALL">INSTALL</a>.&nbsp; Once the LinBox
      distribution has been downloaded from the <a href="http://www.linalg.org/download.html"> LinBox download section</a>,
    </blockquote>

    <blockquote>
      <p><b>1.</b>
	  <b>Unpack</b> the distribution using <tt>tar</tt> command:
      <blockquote>
	<tt>
	  tar -xvzf linbox-X.X.X.tar.gz
	</tt>
      </blockquote>
    </blockquote>

    <blockquote>
      <b>2.</b> Go to the newly-created linbox directory and
      run the script
	  <b>configure</b>.

	  <blockquote><tt>&gt; cd linbox</tt></blockquote>
	  There are many options for configuring LinBox.
	  If you are not sure, just run
	  <blockquote><tt>&gt;&nbsp;./configure --help </tt></blockquote>
	  You will find a very comprehensible list of all possible features you may enable/disable.

	  <br><br><b>Required packages are the following:</b>
	  <br>
	  <br>
	  <table  border="3" style="text-align: left; margin-left: 30pt;" cellpadding="5" cellspacing="5">
	    <tr>
	      <td> <a href="https://forge.imag.fr/projects/givaro">Givaro</a></td>
	      <td> <tt> --with-givaro= &lt;givaro_directory&gt;</tt></td>
	      <td> used for finite fields, integer, rational and polynomial arithmetic.</td>
	    </tr>
	    <tr>
	      <td> <a href="http://linalg.org/projects/fflas-ffpack">Fflas-Ffpack</a></td>
	      <td> <tt> --with-fflas-ffpack= &lt;fflasffpack_directory&gt;</tt></td>
	      <td> used for small field dense linear algebra.</td>
	    </tr>
	  </table>


	  Basically, minimal LinBox only requires a working <a
		  href="https://forge.imag.fr/projects/givaro/">Givaro</a> and <a
		  href="http://linalg.org/projects/fflas-ffpack">Fflas-Ffpack</a>
	  installation.  If they are not under the standard <tt>/usr</tt> or
	  <tt>/usr/local</tt> paths, you may enable them with
	  <tt>--with-givaro=&lt;path/to/givaro&gt;</tt> and
	  <tt>--with-fflas-ffpack=&lt;path/to/fflas-ffpack&gt;</tt> options.
	  <p>
	  <b> NOTE </b> : other requirements
	<br><a href="https://forge.imag.fr/projects/givaro/">Givaro</a> requires GMP for big integer operations, see <a href="https://forge.imag.fr/projects/givaro/">Givaro page</a> for more information.
	<br><a href="http://linalg.org/projects/fflas-ffpack">Fflas-Ffpack</a> requires some BLAS for floating point dense matrix multiplication, see <a href="http://linalg.org/projects/fflas-ffpack">Fflas-Ffpack page</a> for more information.
	  </p>
	  <table  border="3" style="text-align: left; margin-left: 30pt;" cellpadding="5" cellspacing="5">
	    <tr>
	      <td> For Givaro install</td>
	      <td> <a href="http://gmplib.org">GMP</a></td>
	    </tr>
	    <tr>
	      <td> For Fflas-Ffpack install</td>
	      <td> <a href="http://cms.tacc.utexas.edu/tacc-projects/gotoblas2">Goto BLAS 2</a></td>
	      <td> <a href="http://math-atlas.sourceforge.net">ATLAS</a></td>
	      <td> or ... </td>
	    </tr>
	  </table>


	  <p>
	  <b> NOTE </b> :
	  There is a script in alpha version that tries to automate the installation of required packages:
	   <blockquote><tt>&gt;&nbsp;sh auto-install.sh </tt></blockquote>
	   this will download the appropriate dependencies, compile and install them.
	   Use <tt>--help</tt> for help on how to use this script.
	  </p>

      <p> <b>3.</b> Optional configurations

	  <br><b>Available packages are the following:</b>
	  <br>
	  <br>
	  <table  border="3" style="text-align: left; margin-left: 30pt;" cellpadding="5" cellspacing="5">
	    <tr>
	      <td> <a href="http://shoup.net/ntl/">NTL</a></td>
	      <td> <tt> --with-ntl= &lt;ntl_directory&gt;</tt></td>
	      <td> used for finite field, polynomial arithmetic.</td>
	    </tr>
	    <tr>
	      <td> <a href="http://www.informatik.tu-darmstadt.de/TI/LiDIA/"> Lidia </a></td>
	      <td> <tt> --with-lidia= &lt;lidia_directory&gt;</tt> </td>
	      <td> used for finite field arithmetic.</td>
	    </tr>
	    <tr>
	      <td> <a href="ftp://ftp.risc.uni-linz.ac.at/pub/saclib/"> Saclib </a></td>
	      <td> <tt> --with-saclib= &lt;saclib_directory&gt;</td>
	      <td> not yet used </td>
	    </tr>
	    <tr>
	      <td> <a href="http://www.maplesoft.com/"> Maple (> v9) </a></td>
	      <td> <tt> --enable-shared --with-maple= &lt;maple-directory&gt;&nbsp; </tt></td>
	      <td> used to create an interface with Maple.</td>
	    </tr>
	    <tr>
	      <td> <a href="http://www.doxygen.org/"> Doxygen </a></td>
	      <td> <tt> --enable-doc </tt></td>
	      <td>used to create the html reference manual (nothing will be created otherwise).</td>
	    </tr>
		<tr>
	      <td> <a href="http://www.cs.uwaterloo.ca/~astorjoh/iml.html"> IML </a></td>
	      <td> <tt> --with-iml= &lt;IML-path&gt;&nbsp; </tt></td>
	      <td>used for fast integer/rational linear algebra.</td>
	    </tr>
		<tr>
		<td> <a href="http://www.gnuplot.info/">gnuplot</a></td>
	      <td> <tt> -enable-benchmark </tt></td>
	      <td>used for creating plots in benchmarks.</td>
	    </tr>

	  </table>

	  <br>
	  Note:
	  <blockquote>
	    <p> the use of <tt> --with-default= &lt;default_directory&gt;</tt> can add a special directory to the default location of library
	    <p> the use of <tt> --with-all</tt> specifies that all packages will be used
	  </blockquote>

	<!-- <p><b> 3.4.</b> Here is a full example: -->
	<!-- <blockquote> -->
	<!-- <tt>./configure --prefix=/usr/local/soft/linbox-1.1 --with-givaro=/usr/local/soft/givaro-3.2.6 --with-ntl=/usr/local/soft/ntl-5.4 --with-gmp=/usr/local/soft/gmp-4.2.1 --with-blas="-L/usr/local/soft/GotoBLAS -lgoto -lpthread" --with-maple=/usr/local/soft/maple --enable-optimization --enable-shared --disable-static</tt> -->
	  <!-- </blockquote> -->
	<!-- </blockquote> -->


	<b>4.&nbsp; </b><b>Install</b> the library:
      <blockquote><tt>&gt;&nbsp; make </tt></blockquote>
      <blockquote><tt>&gt;&nbsp; make install</tt></blockquote>

	  <b>5.&nbsp; </b>Optional make targets:

	  <blockquote><tt>&gt;&nbsp; make examples</tt></blockquote>
	  will compile the examples.

      <blockquote><tt>&gt;&nbsp; make check</tt></blockquote>
	  will check LinBox is up and running.

	  <blockquote><tt>&gt;&nbsp; make fullcheck</tt></blockquote>
	  will perform additionnal checks to ensure LinBox is completely sane.

	  <blockquote><tt>&gt;&nbsp; make benchmarks</tt></blockquote>
	  will benchmarks some LinBox functionnalities.
	  <br>
	  <br>


	  <b>6.&nbsp; Enjoy !</b> <small>(and report bugs, supply patches, ask for more functionnalities,... on the linbox mailing lists)</small>

	</blockquote>
    <hr WIDTH="100%">
    <div align=right><font size=-1>Copyright 1999-2011 The Linbox Group.</font></div>

  </body>
</html>
